Virtual keyboards, alternatively known as onscreen keyboards, provide a way for the user to bypass the traditional keyboard if the user so desires, or the particular application requires it. A virtual keyboard is a keyboard represented on a screen displaying keys typically found on a real keyboard. A virtual keyboard on a screen can usually be operated with an actual keyboard, a mouse or even touch screen input. Several conventional virtual keyboards available in the market provide different key layouts and multi-lingual configurations. Implemented in many different ways, virtual keyboards may be provided by applications resident on a computer which can be launched by clicking on them with a mouse, or may be embedded in web pages for Internet websites such as banking websites.
Both hardware and software-based key logging applications are used by computer hackers to maliciously capture the keystrokes from a user's keyboard. This in turn can be used to gather passwords, personal identification numbers (PIN) and other crucial information. Virtual keyboards are commonly used to avert these key loggers. Although it is possible for malware to capture information through mouse movements, it is significantly harder than monitoring real keystrokes. Additionally, there is the possibility of the data being captured and modified in the path from the keyboard application to the device/application with which the virtual keyboard is communicating.
Although many conventional virtual keyboard solutions exist, they typically do not provide adequate security measures. Additionally, hardware products such as conventional USB products typically use a regular keyboard for password entry when connected to a computer, thus providing inadequate security. Accordingly, there is a desire for a more secure virtual keyboard that avoids these and other related problems.